function checkPassword() {
    // let var
    let password = document.getElementById("password").value;
    let rePassword = document.getElementById("rePassword").value;
    if (password != rePassword) {
        // innerText 文本域
        // innerHTML html
        document.getElementById("passwordTip").innerHTML = "两次密码输入不一致，请重新输入!";
        document.getElementById("passwordTip").style.color = "red";
        // document.getElementById("rePassword").focus();
    } else {
        document.getElementById("passwordTip").innerHTML = "密码输入一致!";
        document.getElementById("passwordTip").style.color = "green";
    }

}

function checkUsername() {
    // let username=document.getElementById("username").value;//js写法
    var username = $("#username").val();
    let reg = /^[a-zA-Z]\w{5,15}$/;
    // var 全局变量 let 局部变量 const 常量
    if (reg.test(username)) {
        $("#usernameTip").html("输入正确");
        $("#usernameTip").css("color", "green");
        return true;
    } else {
        $("#usernameTip").html("格式输入错误");
        $("#usernameTip").css("color", "red");
        return false;
    }

}

function checkPhone() {
    return checkText("phone", "phoneTip", /^1[3689][0-9]{9}$/, "电话输入正确", "电话格式输入错误");
}

function checkText(id, tipId, reg, success, error) {
    let username = $("#" + id).val();
    // var 全局变量 let 局部变量 const 常量
    if (reg.test(username)) {
        $("#" + tipId).html(success);
        $("#" + tipId).css("color", "green");
        return true;
    } else {
        $("#" + tipId).html(error);
        $("#" + tipId).css("color", "red");
        return false;
    }
}

function register() {
    //js数据类型
    //数字，字符串，数组，对象，布尔

    let data = {
        username: $("#username").val(),
        password: $("#password").val(),
        phone: $("#phone").val(),
        sex: $("input[name='sex']:checked").val(),
        birthday: $("#birthday").val(),
        code: $("#code").val(),
        hobby: JSON.stringify(aihao()),
        introduce: $("#introduce").val()
    };
    console.log(data);
    $.ajax({
        url: '/userRegister',//访问后台servlet里面的地址@WebServlet("/userRegister")
        data: data,//页面传递到后台的值
        type: 'post',//对应servlet里面方法的名字
        dataType: 'json',//返回一个json对象
        success: function (data) {//后台返回给页面的值
            console.log(data);
            if (data == 1) {
                // window.location.href = "/back/login.html";
                window.open("/back/login.html", "_blank");
            } else if (data == 4) {
                alert("你输入的用户名已经存在");
            } else {
                alert("注册失败");
            }
        }
    })
}


function aihao() {
    let hb = [];
    $("input:checkbox[name='hobby']").each(function () {
        console.log();
        if ($(this).prop("checked")) {
            hb.push($(this).val());
        }
    })

    return hb;
}

function judge() {
    let name = checkUsername();
    let phone = checkPhone();
    if (name && phone) {
        let data = {
            username: $("#username").val(),
            password: $("#password").val(),
            phone: $("#phone").val(),
            sex: $("input[name='sex']:checked").val(),
            birthday: $("#birthday").val(),
            code: $("#code").val(),
            hobby: JSON.stringify(aihao()),
            introduce: $("#introduce").val()
        };
        $.ajax({
            url: '/userRegister',//和servlet里面的注解一一对应
            data: data,//传递到后台的值
            type: 'post',//和servlet里面 的do方法一致
            dataType: 'json',//后台传递到前台的值的类型 text html application json
            success: function (data) {//是后台传递到前端的值
                if (data.count == 1) {
                    window.open("/back/login.html");
                } else if (data.count == -1) {
                    alert("用户名已经存在:注册失败");
                } else {
                    alert("注册失败");
                }
            }
        })
    }


}

function aihao() {
    let hb = [];
    $("input:checkbox[name='hobby']").each(function () {
        console.log();
        if ($(this).prop("checked")) {
            hb.push($(this).val());
        }
    })

    return hb;
}